<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
            "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>



<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.08">
<LINK rel="stylesheet" type="text/css" href="embroot.css">
<TITLE>
Contents
</TITLE>
</HEAD>
<BODY >
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="embroot002.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H1 CLASS="chapter">Contents</H1>
<UL CLASS="ftoc1"><LI CLASS="li-toc">
<A HREF="embroot002.html#htoc1">Chapter&nbsp;1&nbsp;&nbsp;Introduction</A>
<LI CLASS="li-toc"><A HREF="embroot003.html#htoc2">Chapter&nbsp;2&nbsp;&nbsp;Calling ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> from C++</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot004.html#htoc3">2.1&nbsp;&nbsp;To get started</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot004.html#htoc4">2.1.1&nbsp;&nbsp;Directories</A>
<LI CLASS="li-toc"><A HREF="embroot004.html#htoc5">2.1.2&nbsp;&nbsp;Definitions</A>
<LI CLASS="li-toc"><A HREF="embroot004.html#htoc6">2.1.3&nbsp;&nbsp;Compiling, linking and running on Unix/Linux</A>
<LI CLASS="li-toc"><A HREF="embroot004.html#htoc7">2.1.4&nbsp;&nbsp;Compiling, linking and running on Windows</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot005.html#htoc8">2.2&nbsp;&nbsp;Creating an ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> context</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot005.html#htoc9">2.2.1&nbsp;&nbsp;Initialisation</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot006.html#htoc10">2.3&nbsp;&nbsp;Control flow</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot006.html#htoc11">2.3.1&nbsp;&nbsp;Control flow and search</A>
<LI CLASS="li-toc"><A HREF="embroot006.html#htoc12">2.3.2&nbsp;&nbsp;Asynchronous events</A>
<LI CLASS="li-toc"><A HREF="embroot006.html#htoc13">2.3.3&nbsp;&nbsp;The yield-resume model</A>
<LI CLASS="li-toc"><A HREF="embroot006.html#htoc14">2.3.4&nbsp;&nbsp;Summary of EC_resume() arguments</A>
</UL>
</UL>
<LI CLASS="li-toc"><A HREF="embroot007.html#htoc15">Chapter&nbsp;3&nbsp;&nbsp;Managing Data and Memory in Mixed-Language Applications</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot008.html#htoc16">3.1&nbsp;&nbsp;Constructing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> data</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot008.html#htoc17">3.1.1&nbsp;&nbsp;ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> atoms and functors</A>
<LI CLASS="li-toc"><A HREF="embroot008.html#htoc18">3.1.2&nbsp;&nbsp;Building ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms</A>
<LI CLASS="li-toc"><A HREF="embroot008.html#htoc19">3.1.3&nbsp;&nbsp;Building atomic ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms</A>
<LI CLASS="li-toc"><A HREF="embroot008.html#htoc20">3.1.4&nbsp;&nbsp;Building ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> lists</A>
<LI CLASS="li-toc"><A HREF="embroot008.html#htoc21">3.1.5&nbsp;&nbsp;Building ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> structures</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot009.html#htoc22">3.2&nbsp;&nbsp;Converting ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> data to C data</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot009.html#htoc23">3.2.1&nbsp;&nbsp;Converting simple ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms to C data types</A>
<LI CLASS="li-toc"><A HREF="embroot009.html#htoc24">3.2.2&nbsp;&nbsp;Decomposing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot010.html#htoc25">3.3&nbsp;&nbsp;Referring to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms</A>
<LI CLASS="li-toc"><A HREF="embroot011.html#htoc26">3.4&nbsp;&nbsp;Passing generic C or C++ data to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP></A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot011.html#htoc27">3.4.1&nbsp;&nbsp;Wrapping and unwrapping external data in an ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> term</A>
<LI CLASS="li-toc"><A HREF="embroot011.html#htoc28">3.4.2&nbsp;&nbsp;The method table</A>
</UL>
</UL>
<LI CLASS="li-toc"><A HREF="embroot012.html#htoc29">Chapter&nbsp;4&nbsp;&nbsp;External Predicates in C and C++</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot013.html#htoc30">4.1&nbsp;&nbsp;Coding External Predicates</A>
<LI CLASS="li-toc"><A HREF="embroot014.html#htoc31">4.2&nbsp;&nbsp;Compiling and loading</A>
<LI CLASS="li-toc"><A HREF="embroot015.html#htoc32">4.3&nbsp;&nbsp;Restrictions and Recommendations</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot016.html#htoc33">Chapter&nbsp;5&nbsp;&nbsp;Embedding into Tcl/Tk</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot017.html#htoc34">5.1&nbsp;&nbsp;Loading the interface</A>
<LI CLASS="li-toc"><A HREF="embroot018.html#htoc35">5.2&nbsp;&nbsp;Initialising the ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Subsystem</A>
<LI CLASS="li-toc"><A HREF="embroot019.html#htoc36">5.3&nbsp;&nbsp;Shutting down the ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Subsystem</A>
<LI CLASS="li-toc"><A HREF="embroot020.html#htoc37">5.4&nbsp;&nbsp;Passing Goals and Control to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP></A>
<LI CLASS="li-toc"><A HREF="embroot021.html#htoc38">5.5&nbsp;&nbsp;Communication via Queues</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot021.html#htoc39">5.5.1&nbsp;&nbsp;From-ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> to Tcl</A>
<LI CLASS="li-toc"><A HREF="embroot021.html#htoc40">5.5.2&nbsp;&nbsp;To-ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> from Tcl</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot022.html#htoc41">5.6&nbsp;&nbsp;Attaching Handlers to Queues</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot022.html#htoc42">5.6.1&nbsp;&nbsp;Tcl handlers</A>
<LI CLASS="li-toc"><A HREF="embroot022.html#htoc43">5.6.2&nbsp;&nbsp;ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> handlers</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot023.html#htoc44">5.7&nbsp;&nbsp;Obtaining the Interface Type</A>
<LI CLASS="li-toc"><A HREF="embroot024.html#htoc45">5.8&nbsp;&nbsp;Type conversion between Tcl and ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP></A>
<LI CLASS="li-toc"><A HREF="embroot025.html#htoc46">5.9&nbsp;&nbsp;Incompatible and obsolete commands</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot026.html#htoc47">Chapter&nbsp;6&nbsp;&nbsp;Remote Tcl Interface</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot027.html#htoc48">6.1&nbsp;&nbsp;Basic Concepts of the Interface</A>
<LI CLASS="li-toc"><A HREF="embroot028.html#htoc49">6.2&nbsp;&nbsp;Loading the Interface</A>
<LI CLASS="li-toc"><A HREF="embroot029.html#htoc50">6.3&nbsp;&nbsp;Attaching and Initialising the Interface</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot029.html#htoc51">6.3.1&nbsp;&nbsp;A Note on Security</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot030.html#htoc52">6.4&nbsp;&nbsp;Type Conversion Between Tcl and ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP></A>
<LI CLASS="li-toc"><A HREF="embroot031.html#htoc53">6.5&nbsp;&nbsp;Executing an ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Goal From Tcl</A>
<LI CLASS="li-toc"><A HREF="embroot032.html#htoc54">6.6&nbsp;&nbsp;Communication via Queues</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot032.html#htoc55">6.6.1&nbsp;&nbsp;Queue Data Handlers</A>
<LI CLASS="li-toc"><A HREF="embroot032.html#htoc56">6.6.2&nbsp;&nbsp;Synchronous Queues</A>
<LI CLASS="li-toc"><A HREF="embroot032.html#htoc57">6.6.3&nbsp;&nbsp;Asynchronous Queues</A>
<LI CLASS="li-toc"><A HREF="embroot032.html#htoc58">6.6.4&nbsp;&nbsp;Reusable Queue Names</A>
<LI CLASS="li-toc"><A HREF="embroot032.html#htoc59">6.6.5&nbsp;&nbsp;Translating the Queue Names</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot033.html#htoc60">6.7&nbsp;&nbsp;Additional Control and Support</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot033.html#htoc61">6.7.1&nbsp;&nbsp;Initialisation During Attachment</A>
<LI CLASS="li-toc"><A HREF="embroot033.html#htoc62">6.7.2&nbsp;&nbsp;Disconnection and Control Transfer Support</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot034.html#htoc63">6.8&nbsp;&nbsp;Example</A>
<LI CLASS="li-toc"><A HREF="embroot035.html#htoc64">6.9&nbsp;&nbsp;Differences From the Tcl Embedding Interface</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot036.html#htoc65">Chapter&nbsp;7&nbsp;&nbsp;Tcl Peer Multitasking Interface</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot037.html#htoc66">7.1&nbsp;&nbsp;Introduction</A>
<LI CLASS="li-toc"><A HREF="embroot038.html#htoc67">7.2&nbsp;&nbsp;Loading the interface</A>
<LI CLASS="li-toc"><A HREF="embroot039.html#htoc68">7.3&nbsp;&nbsp;Overview</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot039.html#htoc69">7.3.1&nbsp;&nbsp;Summary of Tcl Commands</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot040.html#htoc70">7.4&nbsp;&nbsp;Example</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot041.html#htoc71">Chapter&nbsp;8&nbsp;&nbsp;Using the Java-ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Interface</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot042.html#htoc72">8.1&nbsp;&nbsp;Getting Started</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot042.html#htoc73">8.1.1&nbsp;&nbsp;Check your Java SDK version</A>
<LI CLASS="li-toc"><A HREF="embroot042.html#htoc74">8.1.2&nbsp;&nbsp;Make the <TT>com.parctechnologies.eclipse</TT> package available in your class path</A>
<LI CLASS="li-toc"><A HREF="embroot042.html#htoc75">8.1.3&nbsp;&nbsp;Compile and run <TT>QuickTest.java</TT></A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot043.html#htoc76">8.2&nbsp;&nbsp;Functionality overview: A closer look at <TT>QuickTest.java</TT></A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc77">8.3&nbsp;&nbsp;Java representation of ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> data</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot044.html#htoc78">8.3.1&nbsp;&nbsp;General correspondence between ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> and Java data types</A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc79">8.3.2&nbsp;&nbsp;Atoms and compound terms</A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc80">8.3.3&nbsp;&nbsp;Lists</A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc81">8.3.4&nbsp;&nbsp;Floats and Doubles</A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc82">8.3.5&nbsp;&nbsp;Integers</A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc83">8.3.6&nbsp;&nbsp;Variables</A>
<LI CLASS="li-toc"><A HREF="embroot044.html#htoc84">8.3.7&nbsp;&nbsp;The <TT>equals()</TT> method</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot045.html#htoc85">8.4&nbsp;&nbsp;Executing an ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> goal from Java and processing the result</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot045.html#htoc86">8.4.1&nbsp;&nbsp;Passing the goal parameter to <TT>rpc</TT></A>
<LI CLASS="li-toc"><A HREF="embroot045.html#htoc87">8.4.2&nbsp;&nbsp;Retrieving the results of an <TT>rpc</TT> goal execution</A>
<LI CLASS="li-toc"><A HREF="embroot045.html#htoc88">8.4.3&nbsp;&nbsp;More details about <TT>rpc</TT> goal execution</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot046.html#htoc89">8.5&nbsp;&nbsp;Communicating between Java and ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> using queues</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot046.html#htoc90">8.5.1&nbsp;&nbsp;Opening, using and closing queues</A>
<LI CLASS="li-toc"><A HREF="embroot046.html#htoc91">8.5.2&nbsp;&nbsp;Writing and reading ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms on queues</A>
<LI CLASS="li-toc"><A HREF="embroot046.html#htoc92">8.5.3&nbsp;&nbsp;Using the <I>QueueListener</I> interface</A>
<LI CLASS="li-toc"><A HREF="embroot046.html#htoc93">8.5.4&nbsp;&nbsp;Access to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP>'s standard streams</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot047.html#htoc94">8.6&nbsp;&nbsp;Asynchronous Communicating between Java and ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP></A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot047.html#htoc95">8.6.1&nbsp;&nbsp;Opening and closing asynchronous queues</A>
<LI CLASS="li-toc"><A HREF="embroot047.html#htoc96">8.6.2&nbsp;&nbsp;Writing and reading ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms on queues</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot048.html#htoc97">8.7&nbsp;&nbsp;Managing connections to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP></A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot048.html#htoc98">8.7.1&nbsp;&nbsp;A unified ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP>-side interface to Java : the `peer' concept</A>
<LI CLASS="li-toc"><A HREF="embroot048.html#htoc99">8.7.2&nbsp;&nbsp;Creating and managing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> engines from Java</A>
<LI CLASS="li-toc"><A HREF="embroot048.html#htoc100">8.7.3&nbsp;&nbsp;Connecting to an existing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> engine using <I>RemoteEclipse</I></A>
<LI CLASS="li-toc"><A HREF="embroot048.html#htoc101">8.7.4&nbsp;&nbsp;Comparison of different Java-ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> connection techniques</A>
</UL>
</UL>
<LI CLASS="li-toc"><A HREF="embroot049.html#htoc102">Chapter&nbsp;9&nbsp;&nbsp;EXDR Data Interchange Format</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot050.html#htoc103">9.1&nbsp;&nbsp;ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> primitives to read/write EXDR terms</A>
<LI CLASS="li-toc"><A HREF="embroot051.html#htoc104">9.2&nbsp;&nbsp;Serialized representation of EXDR terms</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot052.html#htoc105">Chapter&nbsp;10&nbsp;&nbsp;The Remote Interface Protocol</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot053.html#htoc106">10.1&nbsp;&nbsp;Introduction</A>
<LI CLASS="li-toc"><A HREF="embroot054.html#htoc107">10.2&nbsp;&nbsp;Basics</A>
<LI CLASS="li-toc"><A HREF="embroot055.html#htoc108">10.3&nbsp;&nbsp;Attachment</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot055.html#htoc109">10.3.1&nbsp;&nbsp;An example</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot056.html#htoc110">10.4&nbsp;&nbsp;Remote Peer Queues</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot056.html#htoc111">10.4.1&nbsp;&nbsp;Synchronous peer queues</A>
<LI CLASS="li-toc"><A HREF="embroot056.html#htoc112">10.4.2&nbsp;&nbsp;Asynchronous peer queues</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot057.html#htoc113">10.5&nbsp;&nbsp;Control Messages</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot057.html#htoc114">10.5.1&nbsp;&nbsp;The disconnection protocol</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot058.html#htoc115">10.6&nbsp;&nbsp;Support for the Remote Interface</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot059.html#htoc116">Chapter&nbsp;11&nbsp;&nbsp;DBI: ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> SQL Database Interface</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot060.html#htoc117">11.1&nbsp;&nbsp;Introduction</A>
<LI CLASS="li-toc"><A HREF="embroot061.html#htoc118">11.2&nbsp;&nbsp;Using the SQL database interface</A>
<LI CLASS="li-toc"><A HREF="embroot062.html#htoc119">11.3&nbsp;&nbsp;Data Templates</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot062.html#htoc120">11.3.1&nbsp;&nbsp;Conversion between ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> and database types</A>
<LI CLASS="li-toc"><A HREF="embroot062.html#htoc121">11.3.2&nbsp;&nbsp;Specifying buffer sizes in templates</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot063.html#htoc122">11.4&nbsp;&nbsp;Built-Ins</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot063.html#htoc123">11.4.1&nbsp;&nbsp;Sessions</A>
<LI CLASS="li-toc"><A HREF="embroot063.html#htoc124">11.4.2&nbsp;&nbsp;Database Updates</A>
<LI CLASS="li-toc"><A HREF="embroot063.html#htoc125">11.4.3&nbsp;&nbsp;Database Queries</A>
<LI CLASS="li-toc"><A HREF="embroot063.html#htoc126">11.4.4&nbsp;&nbsp;Parametrised Database Queries</A>
</UL>
</UL>
<LI CLASS="li-toc"><A HREF="embroot064.html#htoc127">Appendix&nbsp;A&nbsp;&nbsp;Parameters for Initialising an ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> engine</A>
<LI CLASS="li-toc"><A HREF="embroot065.html#htoc128">Appendix&nbsp;B&nbsp;&nbsp;Summary of C++ Interface Functions</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot066.html#htoc129">B.1&nbsp;&nbsp;Constructing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms in C++</A>
<UL CLASS="ftoc3"><LI CLASS="li-toc">
<A HREF="embroot066.html#htoc130">B.1.1&nbsp;&nbsp;Class EC_atom and EC_functor</A>
<LI CLASS="li-toc"><A HREF="embroot066.html#htoc131">B.1.2&nbsp;&nbsp;Class EC_word</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot067.html#htoc132">B.2&nbsp;&nbsp;Decomposing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms in C++</A>
<LI CLASS="li-toc"><A HREF="embroot068.html#htoc133">B.3&nbsp;&nbsp;Referring to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms from C++</A>
<LI CLASS="li-toc"><A HREF="embroot069.html#htoc134">B.4&nbsp;&nbsp;Passing Data to and from External Predicates in C++</A>
<LI CLASS="li-toc"><A HREF="embroot070.html#htoc135">B.5&nbsp;&nbsp;Operations on ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Data</A>
<LI CLASS="li-toc"><A HREF="embroot071.html#htoc136">B.6&nbsp;&nbsp;Initialising and Shutting Down the ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Subsystem</A>
<LI CLASS="li-toc"><A HREF="embroot072.html#htoc137">B.7&nbsp;&nbsp;Passing Control and Data to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> from C++</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot073.html#htoc138">Appendix&nbsp;C&nbsp;&nbsp;Summary of C Interface Functions</A>
<UL CLASS="ftoc2"><LI CLASS="li-toc">
<A HREF="embroot074.html#htoc139">C.1&nbsp;&nbsp;Constructing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms in C</A>
<LI CLASS="li-toc"><A HREF="embroot075.html#htoc140">C.2&nbsp;&nbsp;Decomposing ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms in C</A>
<LI CLASS="li-toc"><A HREF="embroot076.html#htoc141">C.3&nbsp;&nbsp;Referring to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> terms from C</A>
<LI CLASS="li-toc"><A HREF="embroot077.html#htoc142">C.4&nbsp;&nbsp;Passing Data to and from External Predicates in C</A>
<LI CLASS="li-toc"><A HREF="embroot078.html#htoc143">C.5&nbsp;&nbsp;Operations on ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Data</A>
<LI CLASS="li-toc"><A HREF="embroot079.html#htoc144">C.6&nbsp;&nbsp;Initialising and Shutting Down the ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Subsystem</A>
<LI CLASS="li-toc"><A HREF="embroot080.html#htoc145">C.7&nbsp;&nbsp;Creating External Predicates in C</A>
<LI CLASS="li-toc"><A HREF="embroot081.html#htoc146">C.8&nbsp;&nbsp;Passing Control and Data to ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> from C</A>
<LI CLASS="li-toc"><A HREF="embroot082.html#htoc147">C.9&nbsp;&nbsp;Communication via ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> Streams</A>
<LI CLASS="li-toc"><A HREF="embroot083.html#htoc148">C.10&nbsp;&nbsp;Miscellaneous</A>
</UL>
<LI CLASS="li-toc"><A HREF="embroot084.html#htoc149">Appendix&nbsp;D&nbsp;&nbsp;Foreign C Interface</A>
</UL>

<HR>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="embroot002.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
